home *** CD-ROM | disk | FTP | other *** search
- // $Id: xanimapi.h 1.45 1995/09/04 17:23:38 PIERRE Exp $
- // Ray Dream, Inc. Confidential and Proprietary information.
- // Copyright (c) 1994-1995 Ray Dream, Inc. All rights reserved.
-
- #ifndef __XANIMAPI__
- #define __XANIMAPI__
-
- #ifndef __MTYPES__
- #include "MTypes.h"
- #endif
-
- class RDList;
- class RDPoint;
- class RDRect;
- class LPoint;
- class LRect;
- class SDGraphicDevice;
- class Riostream;
- class Tweener;
- class TimeRuler;
- class MTimeBased;
- class QuickFixVector3;
- struct TFacette;
- struct TPatch;
- class Iterator;
- class QFixMatrix33;
- class QuickFix;
- class XTimeLineM;
- class RPlatformEvent;
- class XTimeBased;
-
- //----------------
- // TimeManager / XTimeManager
- class XTimeManager;
- typedef void(*XTimeManagerSetTimeProc)(XTimeManager *This,long time);
- typedef long (*XTimeManagerGetTimeProc)(const XTimeManager *This);
- typedef void(*XTimeManagerReadProc)(XTimeManager *This,Riostream *stream);
- typedef void(*XTimeManagerWriteProc)(const XTimeManager *This,Riostream *stream);
- typedef void(*XTimeManagerEnableEventCreaterProc)(XTimeManager *This,Boolean enable);
-
- //----------------
- // TimeBaseData
- class TimeBaseData;
- typedef TimeBaseData* (*XTimeBasedNewProc)();
- typedef void (*XTimeBasedDeleteProc)(TimeBaseData *This);
- typedef void (*XTimeBasedSetXTimeBasedProc)(TimeBaseData *This,XTimeBased *aTB);
- typedef void (*XTimeBasedWriteWithKeywordProc)(TimeBaseData *data,Riostream *stream,long keyword);
- typedef void (*XTimeBasedReadProc)(TimeBaseData *data,Riostream *stream);
- typedef void (*XTimeBasedCopyDataProc)(const TimeBaseData *data,TimeBaseData *timebased);
- typedef void (*XTimeBasedSetTimeManagerProc)(TimeBaseData *data,XTimeManager *timeManager);
- typedef Boolean (*XTimeBasedCheckParamForReadProc)(TimeBaseData *data,short index);
- typedef void (*XTimeBasedMarkModifiedProc)(TimeBaseData *data,short index);
- typedef short (*XTimeBasedSetParamProc)(TimeBaseData *data,void *aparam,const char *itsName,long itsID,long itsType);
- typedef void (*XTimeBasedSetTypeProc) (TimeBaseData *data,long itsType,const char *className);
- typedef short (*XTimeBasedSetParamGroupProc) (TimeBaseData *data,MTimeBased *agroup,const char *itsName,long itsID);
- typedef void (*XTimeBasedChangeParamGroupProc) (TimeBaseData *data,MTimeBased *agroup,short index);
- typedef void (*XTimeBasedEnableParamProc) (TimeBaseData *data,short index,Boolean enable);
-
- typedef void (*XTimeBasedClearParamsProc) (TimeBaseData *data);
- typedef short (*XTimeBasedGetNbrSonsProc) (const TimeBaseData *data);
- typedef const MTimeBased *(*XTimeBasedGetSonIndProc) (const TimeBaseData *data,short index,long *itsType,long *itsID,Boolean *isGroup);
- typedef const MTimeBased * (*XTimeBasedGetFatherProc) (const TimeBaseData *data);
- typedef long (*XTimeBasedGetTypeProc) (const TimeBaseData *data);
-
- //XDeformer
- class XDeformer;
- typedef void (*XDeformerDeformPointProc)(const XDeformer *This,const QuickFixVector3 *PP,QuickFixVector3 *res);
- typedef void (*XDeformerDeformFacetsProc)(const XDeformer *This,Iterator *facets,void (*proc)(TFacette *,void *),void *priv);
- typedef void (*XDeformerDeformPatchesProc)(const XDeformer *This,Iterator *patchs,void (*proc)(TPatch *,void *),void *priv);
- typedef void (*XDeformerSetBoxProc)(XDeformer *This,const QuickFixVector3 *min,const QuickFixVector3 *max);
-
- //XMotionLink
- class MotionLink;
- typedef short (*XMotionLinkGetNbrFreedomProc)(const MotionLink *This);
- typedef void (*XMotionLinkGetFreedomRangeProc)(const MotionLink *This,short index,QuickFix *min,QuickFix *max);
- typedef void (*XMotionLinkGetTransformProc)(const MotionLink *This,QFixMatrix33 *RR,QuickFixVector3 *TT);
- typedef void (*XMotionLinkGetDerivativeProc)(const MotionLink *This,short index,QFixMatrix33 *RR,QuickFixVector3 *TT);
- typedef void (*XMotionLinkIncrementFreedomValueProc)(MotionLink *This,short index,const QuickFix *value);
-
- //XTimeLineM
- typedef long (*XTimeLineMGetTimeScaleProc)(XTimeLineM* This);
- typedef void (*XTimeLineMSetTimeScaleProc)(XTimeLineM* This, const long ticks);
- typedef long (*XTimeLineMGetPixelsProc)(XTimeLineM* This);
- typedef void (*XTimeLineMSetPixelsProc)(XTimeLineM* This, const long pixels);
- typedef long (*XTimeLineMGetSnapProc)(XTimeLineM* This);
- typedef void (*XTimeLineMSetSnapProc)(XTimeLineM* This, const long snap);
- typedef long (*XTimeLineMPixelsToTicksProc)(XTimeLineM* This, const long pixels);
- typedef long (*XTimeLineMTicksToPixelsProc)(XTimeLineM* This, const long ticks);
- typedef void (*XTimeLineMSetTimeBasePosProc)(XTimeLineM* This, TimeBaseData* tb, const LPoint* orig, RDPoint* size);
- typedef void (*XTimeLineMDrawTimeBaseProc)(XTimeLineM* This, SDGraphicDevice* aGD, const LRect* zone, TimeBaseData* tb, Boolean selected);
- typedef Boolean (*XTimeLineMIsTimeBaseExpandedProc)(XTimeLineM* This, TimeBaseData* tb);
- typedef void (*XTimeLineMExpandTimeBaseProc)(XTimeLineM* This, TimeBaseData* tb, Boolean expand);
- typedef void (*XTimeLineMOnTimeBaseMouseActionProc)(XTimeLineM* This, TimeBaseData* tb, const LPoint *mousePos,const RPlatformEvent* event,const RDPoint *threshold);
- typedef void (*XTimeLineMDeselectAllProc)(XTimeLineM* This, long redraw);
-
- typedef long (*XTimeLineMCalcWidthProc)(const XTimeLineM* This);
- typedef void (*XTimeLineMCalcPosProc)(XTimeLineM* This,RDRect *extent);
- typedef short (*XTimeLineMGetCursorIDProc)(XTimeLineM* This, const LPoint* mousePos, const RPlatformEvent* event, short tool);
-
- //TreeBehavior
- class XTreeBehavior;
- class TTree;
-
- #define kXTreeBehaviorDefault 0
- #define kXTreeBehaviorTrackT 1
- #define kXTreeBehaviorTrackR 2
-
- typedef void (*XTreeBehaviorApplyProc)(const XTreeBehavior *This,TTree *atree);
- typedef void (*XTreeBehaviorSetGlobalTransformProc)(const XTreeBehavior *This,TTree *atree,const QFixMatrix33 *RR,const QuickFixVector3 *TT,short mode);
-
- #endif
-
-